package com.wuseguang.springcloud.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Objects;

public class CronUtils {
    //"ss mm HH dd MM ? yyyy"
    private static final SimpleDateFormat sdf = new SimpleDateFormat("ss mm HH dd MM ? yyyy");

   // private static final SimpleDateFormat sdf = new SimpleDateFormat("ss mm HH dd MM ? yyyy");

    /***
     *  功能描述：日期转换cron表达式
     * @param date
     * @return
     */
    public static String formatDateByPattern(String time) {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
        //返回string的时间
        Date parse = null;
        try {
            parse = df.parse(time);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        String formatTimeStr = null;
        if (Objects.nonNull(parse)) {
            formatTimeStr = sdf.format(parse);
        }
        return formatTimeStr;
    }


    private static final SimpleDateFormat sdf1 = new SimpleDateFormat("0 mm HH ? * * *");

    /**
     * 根据上课时间转成corn
     */
    public static String formatDateByPattern2(String time) {
        SimpleDateFormat df = new SimpleDateFormat("HH:mm");//设置日期格式
        //返回string的时间
        Date parse = null;
        try {
            //获取触发事件=上课时间-上课前10分钟
            parse = new Date(df.parse(time).getTime()-(60*5*1000));
        } catch (ParseException e) {
            e.printStackTrace();
        }
        String formatTimeStr = null;
        if (Objects.nonNull(parse)) {
            formatTimeStr = sdf1.format(parse);
        }
        return formatTimeStr;
    }

    public static void main(String[] args) {
        System.out.println(formatDateByPattern2("14:50"));
    }

}
